import axios from "axios";
// 通过axios创建对象，用于发送请求到后端
const request = axios.create({
    timeout: 5000
})

// request拦截器处理
// 1.对所有的请求做统一处理
// 2.统一加入token，Content-Type等
request.interceptors.request.use(config => {
    config.headers['Content-Type'] = 'application/json;charset=utf8'
    return config
}), error => {
    return Promise.reject(error)
}

request.interceptors.response.use(
    response => {
        console.log("response:", response)
        console.log("responseType:", response.config.responseType)
        let res = response.data
        console.log("res type:",typeof res)
        if (response.config.responseType === "blob") {
            return res
        }
        if (typeof res === 'string') {
            // res不为null就转换为json格式
            res = res ? JSON.parse(res) : res
        }
        return res;
    }
)

// 导出request对象，这样就可以在其他组件使用
export default request
